Continuous data protection enables a user to be able to access or restore a previous state with finer time granularity than previously offered by some traditional backup solutions. For example, some traditional backup solutions perform backups at discrete points in time that are separated by hours or even days. The only previous states that a user is able to restore are the states corresponding to those points in time. With continuous data protection, data (e.g., a file or other data associated with a continuously protected device) is continuously protected over a window of time and a user is able to access any prior state within that window. For example, using some continuous data protection systems a user can access or restore saved states that are single writes apart.
To continuously protect data, previous version data typically is obtained and stored in allocated storage. In some cases, there is a significant amount of previous version data that needs to be stored. Typically storage required to store previous version data has been allocated in a manner that does not ensure efficient use of time and computing resources to allocate, write to, and/or retrieve related data from the allocated storage (e.g., two relatively small pieces of allocated storage may be located relatively far away from each other in physical distance and time may be wasted moving from one to the other). There is a need, therefore, for a way to more efficiently allocate storage to be used to store previous version data.